using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using Entidades;
public partial class ABMRespuesta : System.Web.UI.Page
{
    protected void Page_Load(object sender, System.EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            preparaAlta();
        }
    }
    protected void linkRespuesta_Click(object sender, System.EventArgs e)
    {
        traerTodos();
    }
    private void traerTodos()
    {
        try
        {
            grdRespuesta.DataSource = Respuesta.TraerTodos();
            grdRespuesta.DataBind();
        }
        catch (Exception ex)
        {
            grdRespuesta.DataSource = null;
            grdRespuesta.DataBind();
            LUM.lum.mensaje(ex.Message);
        }
    }
    protected void linkAceptar_Click(object sender, System.EventArgs e)
	{
		try {
			Respuesta respuesta = new Respuesta();
			respuesta.IdPregunta = int.Parse( txtIdPregunta.Text.ToString());
			respuesta.strRespuesta = txtRespuesta.Text.ToString();
			respuesta.FechaAlta = DateTime.Parse(txtFechaAlta.Text.ToString());
			respuesta.FechaBaja = DateTime.Parse(txtFechaBaja.Text.ToString());
			respuesta.idMotivoBajaRespuesta = int.Parse(txtidMotivoBajaRespuesta.Text.ToString());
			respuesta.IdUsuarioBajaRespuesta = int.Parse(txtIdUsuarioBajaRespuesta.Text.ToString());
			if (ViewState["Id"] == null) {
				respuesta.Alta();
			} else {
				respuesta.Id = int.Parse(ViewState["Id"].ToString());
				respuesta.Modificar();
			}
		} catch (Exception ex) {
			LUM.lum.mensaje(ex.Message);
		} finally {
			blanquearCampos();
		}
	}
    protected void grdRespuesta_RowDeleting(object sender, System.Web.UI.WebControls.GridViewDeleteEventArgs e)
    {
        try
        {
            Respuesta respuesta = new Respuesta(int.Parse(grdRespuesta.DataKeys[e.RowIndex].Values["Id"].ToString()));
            respuesta.Baja();
        }
        catch (Exception ex)
        {
            LUM.lum.mensaje(ex.Message);
        }
    }
    protected void grdRespuesta_SelectedIndexChanged(object sender, System.EventArgs e)
    {
        try
        {
            preparaModificacion();
            ViewState["Id"] = grdRespuesta.SelectedDataKey.Values["Id"];
            Respuesta respuesta = new Respuesta(int.Parse(ViewState["Id"].ToString()));
            txtIdPregunta.Text = respuesta.IdPregunta.ToString();
            txtRespuesta.Text = respuesta.strRespuesta.ToString();
            txtFechaAlta.Text = respuesta.FechaAlta.ToString();
            txtFechaBaja.Text = respuesta.FechaBaja.ToString();
            txtidMotivoBajaRespuesta.Text = respuesta.idMotivoBajaRespuesta.ToString();
            txtIdUsuarioBajaRespuesta.Text = respuesta.IdUsuarioBajaRespuesta.ToString();
        }
        catch (Exception ex)
        {
            LUM.lum.mensaje(ex.Message);
        }
    }
    protected void linkNuevo_Click(object sender, System.EventArgs e)
    {
        preparaAlta();
    }
    private void blanquearCampos()
    {
        txtIdPregunta.Text = "";
        txtRespuesta.Text = "";
        txtFechaAlta.Text = "";
        txtFechaBaja.Text = "";
        txtidMotivoBajaRespuesta.Text = "";
        txtIdUsuarioBajaRespuesta.Text = "";
    }
    private void preparaAlta()
    {
        ViewState.Remove("Id");
        lbl.Text = "Alta de datos";
    }

    private void preparaModificacion()
    {
        lbl.Text = "Modificacion de datos";
    }
   
}
